<template>
  <div class="count">
    <h2>当前求和为:{{ sum }}</h2>
    <!-- v-model.number  加了个.number就会尽可能将值转为数值以便相加减,不加.number就要用下面的方式加冒号来解决 -->
    <select v-model.number="n">
      <!--
        value前面加了冒号(:)就变成了表达式，这样就可以实现加减,如果不加冒号三个value就是字符串的，点击加减就变成了字符串拼接了
        <option :value="1">1</option>
        <option :value="2">2</option>
        <option :value="3">3</option> 
    -->
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
    </select>
    <button @click="add">加</button>
    <button @click="minus">减</button>
  </div>
</template>

<script setup lang="ts" name="Count">
  import { ref } from "vue";

  //数据
  let sum = ref(1); //当前求和
  let n = ref(1); //用户选择的数字

  //方法
  function add() {
    sum.value += n.value;
  }
  function minus() {
    sum.value -= n.value;
  }
</script>

<style scoped>
  .count {
    background-color: skyblue;
    padding: 10px;
    border-radius: 10px;
    box-shadow: 0 0 10px;
  }
  select,
  button {
    margin: 0 5px;
    height: 25px;
  }
</style>
